// 玩家统计实体类
export interface PlayerStatistics {
  totalCases: number;         // 总案件数
  completedCases: number;     // 已破案件数
  successfulCases: number;    // 成功破案数
  failureCases: number;       // 失败案件数
  successRate: number;        // 成功率
  totalPlayTime: number;      // 总游戏时间（分钟）
  averageSolveTime: number;   // 平均破案时间（分钟）
  caseRecords: CaseRecord[];  // 案件记录
  achievements: Achievement[]; // 成就列表
  lastUpdated: Date;          // 最后更新时间
}

// 案件记录
export interface CaseRecord {
  caseId: string;             // 案件ID
  startTime: Date;            // 开始时间
  endTime?: Date;             // 结束时间
  solveTime?: number;         // 破案用时（分钟）
  isSuccessful: boolean;      // 是否成功
  chosenAnswer?: string;      // 选择的答案
  correctAnswer: string;      // 正确答案
  reasoningNotes?: string;    // 推理笔记
  cluesFound: number;         // 发现的线索数量
  keyEvidenceFound: number;   // 发现的关键证据数量
}

// 成就
export interface Achievement {
  id: string;                 // 成就ID
  name: string;               // 成就名称
  description: string;        // 成就描述
  icon: string;               // 成就图标
  condition: string;          // 获得条件
  isUnlocked: boolean;        // 是否已解锁
  unlockedTime?: Date;        // 解锁时间
  progress: number;           // 当前进度
  targetValue: number;        // 目标值
  category: AchievementCategory; // 成就类别
}

// 成就类别枚举
export enum AchievementCategory {
  CASE_SOLVING = 'caseSolving', // 破案相关
  SKILL = 'skill',              // 技能相关
  COLLECTION = 'collection',    // 收集相关
  SPECIAL = 'special'           // 特殊成就
}